package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by xin on 2016/7/31.
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "LSH金融战败原因", schema = "sg_lsh", catalog = "")
public class Lsh金融战败原因Model {

    public static final String FAIL_CONTENT_RES_STR_ONE ="金融战败";
    public static final String FAIL_CONTENT_RES_STR_TWO ="准全款";
    public static final String STATUS_STR_ONE ="启用";
    public static final String STATUS_STR_TWO ="停用";

    private Integer 金融战败原因编号;
    private String 许可;
    private String 战败原因;
    private String 是否输入;
    private String 启用状态;
    private Timestamp 创建时间;
    private String 更新账号;
    private Timestamp 更新时间;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "金融战败原因编号")
    public Integer get金融战败原因编号() {
        return 金融战败原因编号;
    }

    public void set金融战败原因编号(Integer 金融战败原因编号) {
        this.金融战败原因编号 = 金融战败原因编号;
    }

    @Basic
    @Column(name = "许可")
    public String get许可() {
        return 许可;
    }

    public void set许可(String 许可) {
        this.许可 = 许可;
    }

    @Basic
    @Column(name = "战败原因")
    public String get战败原因() {
        return 战败原因;
    }

    public void set战败原因(String 战败原因) {
        this.战败原因 = 战败原因;
    }

    @Basic
    @Column(name = "是否输入")
    public String get是否输入() {
        return 是否输入;
    }

    public void set是否输入(String 是否输入) {
        this.是否输入 = 是否输入;
    }

    @Basic
    @Column(name = "启用状态")
    public String get启用状态() {
        return 启用状态;
    }

    public void set启用状态(String 启用状态) {
        this.启用状态 = 启用状态;
    }

    @Basic
    @Column(name = "创建时间")
    public Timestamp get创建时间() {
        return 创建时间;
    }

    public void set创建时间(Timestamp 创建时间) {
        this.创建时间 = 创建时间;
    }

    @Basic
    @Column(name = "更新账号")
    public String get更新账号() {
        return 更新账号;
    }

    public void set更新账号(String 更新账号) {
        this.更新账号 = 更新账号;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @PrePersist
    @PreUpdate
    public void onPreUpdate() {
        this.set更新时间(new Timestamp(System.currentTimeMillis()));
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        Lsh金融战败原因Model that = (Lsh金融战败原因Model) o;

        if (金融战败原因编号 != null ? !金融战败原因编号.equals(that.金融战败原因编号) : that.金融战败原因编号 != null) return false;
        if (许可 != null ? !许可.equals(that.许可) : that.许可 != null) return false;
        if (战败原因 != null ? !战败原因.equals(that.战败原因) : that.战败原因 != null) return false;
        if (是否输入 != null ? !是否输入.equals(that.是否输入) : that.是否输入 != null) return false;
        if (启用状态 != null ? !启用状态.equals(that.启用状态) : that.启用状态 != null) return false;
        if (创建时间 != null ? !创建时间.equals(that.创建时间) : that.创建时间 != null) return false;
        if (更新账号 != null ? !更新账号.equals(that.更新账号) : that.更新账号 != null) return false;
        if (更新时间 != null ? !更新时间.equals(that.更新时间) : that.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 金融战败原因编号 != null ? 金融战败原因编号.hashCode() : 0;
        result = 31 * result + (许可 != null ? 许可.hashCode() : 0);
        result = 31 * result + (战败原因 != null ? 战败原因.hashCode() : 0);
        result = 31 * result + (是否输入 != null ? 是否输入.hashCode() : 0);
        result = 31 * result + (启用状态 != null ? 启用状态.hashCode() : 0);
        result = 31 * result + (创建时间 != null ? 创建时间.hashCode() : 0);
        result = 31 * result + (更新账号 != null ? 更新账号.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
